Adaptive radio resource management for wireless local area networks

ABSTRACT

A method for determining whether a data transmission rate in a wireless communication system is appropriate for current system conditions begins by calculating a frame error rate (FER) for a given period of time and obtaining a current data rate. If the current data rate is greater than a minimum data rate and the FER is a high value, then the system switches to a lower data rate. If the current data rate is greater than a minimum data rate and the FER is less than a high value, then the system maintains the current data rate. If the current data rate is less than a maximum data rate and the FER is a low value, then the system determines whether a higher data rate can be used.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from U.S. application Ser. No.10/881,606, filed Jun. 30, 2004, which claims the benefit of U.S.Provisional Patent Application No. 60/516,161 filed Oct. 31, 2003 andU.S. Provisional Patent Application No. 60/518,155 filed Nov. 7, 2003,which are incorporated by reference as if fully set forth herein.

FIELD OF INVENTION

The present invention relates to radio resource management in wirelesslocal area networks (LANs), and more particularly, to a method foradaptively managing the radio resources in a wireless LAN.

BACKGROUND

Wireless communication systems are well known in the art. Generally,such systems comprise communication stations, which transmit and receivewireless communication signals between each other. Depending upon thetype of system, communication stations typically are one of two types:base stations or wireless transmit/receive units (WTRUs), which includemobile units.

The term WTRU as used herein includes, but is not limited to, a userequipment, a mobile station, a fixed or mobile subscriber unit, a pager,or any other type of device capable of operating in a wirelessenvironment. WTRUs include personal communication devices, such asphones, video phones, and Internet ready phones that have networkconnections. In addition, WTRUs include portable personal computingdevices, such as PDAs and notebook computers with wireless modems thathave similar network capabilities. WTRUs that are portable or canotherwise change location are referred to as mobile units.

The term access point as used herein includes, but is not limited to, abase station, a Node B, a site controller, an access point, or otherinterfacing device in a wireless environment that provides WTRUs withwireless access to a network associated with the base station.

Typically, a network of base stations is provided where each basestation is capable of conducting concurrent wireless communications withappropriately configured WTRUs. Some WTRUs are configured to conductwireless communications directly between each other, i.e., without beingrelayed through a network via a base station. This is commonly calledpeer-to-peer wireless communications. WTRUs can be configured for use inmultiple networks with both network and peer-to-peer communicationscapabilities.

One type of wireless system, called a wireless local area network(WLAN), can be configured to conduct wireless communications with WTRUsequipped with WLAN modems that are also able to conduct peer-to-peercommunications with similarly equipped WTRUs. Currently, WLAN modems arebeing integrated into many traditional communicating and computingdevices by manufacturers. For example, cellular phones, personal digitalassistants, and laptop computers are being built with one or more WLANmodems.

A popular wireless local area network environment with one or more WLANaccess points (APs) is built according to one of the IEEE 802.11standards. The basic service set (BSS) is the building block of an IEEE802.11 LAN and consists of WTRUs referred to as stations. The set ofstations which can talk to each other can form a BSS. Multiple BSSs areinterconnected through an architectural component, called a distributionsystem (DS), to form an extended service set (ESS). An access point (AP)is a station that provides access to the DS by providing DS services andgenerally allows concurrent access to the DS by multiple stations.

The 802.11 standards allow multiple transmission rates (and dynamicswitching between rates) to be used to optimize throughput. Lowertransmission rates have more robust modulation characteristics thatallow greater range and/or better operation in noisy environments thanhigher transmission rates, which provide better throughput. It is anoptimization challenge to always select the best (highest) possible ratefor any given coverage and interference condition.

The currently specified transmission rates of various versions of the802.11 standard are as follows: Standard Supported Rates (Mbps) 802.11(original) 1, 2 802.11a 6, 9, 12, 18, 24, 36, 48, 54 802.11b 1, 2, 5.5,11 802.11g 1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54

Conventionally, each 802.11 device has a rate control algorithmimplemented in it that is controlled solely by that device.Specifically, uplink (UL) rate control is performed in stations anddownlink (DL) rate control is performed in APs.

The algorithm for rate switching is not specified by the standards. Itis left up to the station and AP implementation. Such rate controlalgorithms are usually proprietary and thus public information aboutthem is limited. However, several algorithms have been described inacademic and industry literature. Generally, they are relatively simplealgorithms based on detecting missing acknowledgements (ACKs) and otherstatistics.

The 802.11 standard specifies a common medium access control (MAC)layer, which provides a variety of functions that support the operationof 802.11-based wireless LANs. In general, the MAC layer manages andmaintains communications between stations and APs by coordinating accessto a shared radio channel and utilizing protocols that enhancecommunications over a wireless medium. The MAC layer uses a physical(PHY) layer, such as defined in 802.11b or 802.11a, to perform the tasksof carrier sensing, transmission, and receiving of data frames.

In general, every transmitted MAC layer data frame is ACKed by thereceiver. This is classically referred to as a “stop and wait” automaticrepeat request (ARQ) protocol. If an ACK is not received by thetransmitter (lost or never sent), then the original data frame isconsidered lost and the transmitter will go through the contentionprocess again and try to re-send the data frame. A missing ACK assumesthat the receiver does not get the ACK at all. However, a check todetermine if an ACK frame can be partially missing (e.g., the CRC of thepayload is bad, but the header information is intact) can be made. Thiscan then be used in the decision process as a condition halfway betweena missing ACK and a received ACK.

An example of an existing throughput-based rate control algorithm is asfollows. First, 10% of the data is sent periodically at two data ratesadjacent to the current data rate. Then, the throughput at each of thethree different data rates is periodically evaluated by considering theamount of data that is successfully ACKed versus the amount of datatransmitted at a given rate. Finally, a switchover is made to the datarate that provided the best throughput.

Such algorithms are one-dimensional in that they only consider their ownlink quality (via missing ACKs) during a given transmission. Unlike atypical station, APs generally have knowledge of the overall system andcan accordingly consider more dimensions. For example, an AP canconsider the UL data frame rate that was used by a given station withina given time window (e.g., the previous X seconds) as the starting pointrate for its DL rate transmission to that station. An AP can also keeptrack of the last rate transmitted on the DL to a given station in theAP for a given period of time.

Sometimes it is better to transmit at higher rates to all stations (evenwith relatively high error rate) as transmitting at a low data rate toone user tends to slow down the entire system. The performance andswitching points (e.g., how much error rate a typical stationapplication can tolerate) of this type of system can be characterizedand used in the AP rate control.

A cell-based finite state machine (FSM) type approach (as per 3GPP timedivision duplex (TDD) radio resource management (RRM)) can also beapplied, where rate control can take different actions for differentcell states (loads). The cell state can be set, for example, by acongestion control algorithm.

In addition, a wireless link can suffer from a high frame error rate(FER) compared to a wired link. The high FER can be due to a hightraffic load, which results in more collisions and a consequently highFER; a bad wireless link condition, which can be due to highinterference, fading, or a user moving away from an AP; or otherreasons.

SUMMARY

The proposed RRM process manages the radio resources adaptively byacting differently depending on the reason behind the high FER. If thehigh FER is due to a high traffic load, the RRM will attempt to decreaseor regulate the traffic load by triggering congestion control or trafficshaping functions. If the high FER is due to a bad wireless link, theRRM attempts to increase the wireless link robustness by using a morerobust modulation scheme.

A method for determining whether a data transmission rate in a wirelesscommunication system is appropriate for current system conditions beginsby calculating a frame error rate (FER) for a given period of time andobtaining a current data rate. If the current data rate is greater thana minimum data rate and the FER is a high value, then the systemswitches to a lower data rate. If the current data rate is greater thana minimum data rate and the FER is less than a high value, then thesystem maintains the current data rate. If the current data rate is lessthan a maximum data rate and the FER is a low value, then the systemdetermines whether a higher data rate can be used.

BRIEF DESCRIPTION OF THE DRAWINGS

A more detailed understanding of the invention may be had from thefollowing description of a preferred embodiment, given by way ofexample, and to be understood in conjunction with the accompanyingdrawings wherein:

FIG. 1 is a flowchart of an adaptive radio resource management procedurein accordance with one embodiment of the present invention;

FIG. 2 is a flowchart of a rate control procedure at an AP in accordancewith one embodiment of the present invention;

FIG. 3 is a graph of a throughput curve utilized by the rate controlprocedure shown in FIG. 2;

FIG. 4 is a flowchart of a missing ACK function used by the rate controlprocedure shown in FIG. 2; and

FIG. 5 is a diagram of an apparatus constructed in accordance with thepresent invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

As shown in FIG. 1, a radio resource management (RRM) adaptive procedure100 is invoked either periodically or upon detection of a high FER(FER_HIGH, which is an implementation-specific value). The procedure 100begins by comparing the measured FER value to the high FER threshold(FER_HIGH; step 102). If the measured FER value exceeds FER_HIGH, then acomparison is made to determine if the channel utilization is greaterthan a high channel utilization threshold (CH_UTIL_HIGH; step 104). Ifthe channel utilization exceeds CH_UTIL_HIGH, then congestion control istriggered (step 106) and the procedure terminates (step 108).

The goal of congestion control is to reduce the traffic load and channelutilization. In congestion control, the AP can disassociate stationswhich have one or more of the following characteristics: a high errorrate, a low priority MAC address, and excessive channel utilization.From a scheduling perspective, the AP may hold a clear to send (CTS)signal for uplink transmission. In general, the station sends a requestto send (RTS) to an AP if the RTS/CTS mechanism is enabled in the BSS.If the AP holds the CTS, the station cannot transmit packets in theuplink, thereby alleviating the congestion situation. For a user thatfrequently retransmits, its transmission rate can be reduced when thereis congestion, which reduces the contention/collision possibilities.

If the channel utilization is below CH_UTIL_HIGH (step 104), then adetermination is made whether the channel utilization is below a lowchannel utilization threshold (CH_UTIL_LOW; step 110). If the channelutilization is below CH_UTIL_LOW, then the current data rate is examinedto determine if it is greater than the minimum data rate (step 112). Ifthe current data rate is greater than the minimum data rate, then ratecontrol is triggered to decrease the data rate (step 114) and theprocedure terminates (step 108). Rate control is performed to reduce thedata rate to match the offered traffic load. When an AP is not using allthe bandwidth and it experiences a high error rate, its transmissionrate can be reduced to increase the quality of transmission. With alower data rate, a more robust modulation scheme can be used, which inturn improves the FER value.

If the current data rate is equal to the minimum data rate (step 112),then traffic shaping is used to reduce the FER value (step 116), and theprocedure terminates (step 108). During traffic shaping, excess data canbe delayed in order to control the traffic within the allocatedbandwidth, and/or additional bandwidth can be allocated for highpriority data. If the channel utilization exceeds CH_UTIL_LOW (step110), then traffic shaping is triggered (step 116) and the procedureterminates (step 108).

If the measured FER value does not exceed FER_HIGH (step 102), then themeasured FER value is compared to a low FER threshold (FER_LOW; step120). If the measured FER value is below FER_LOW, then a comparison ismade to determine if the channel utilization is greater thanCH_UTIL_HIGH (step 122). If the channel utilization exceedsCH_UTIL_HIGH, then the current data rate is examined to determine if itis less than the maximum data rate (step 124). If the current data rateis less than the maximum data rate, then rate control is triggered toincrease the data rate (step 126) and the procedure terminates (step108). By increasing the data rate, the channel utilization will belowered.

If the current data rate is already equal to the maximum data rate (step124) or if the channel utilization does not exceed CH_UTIL_HIGH (step122), then no further adjustments are made and the procedure terminates(step 108).

If the measured FER is above FER_LOW (step 120), then a comparison ismade to determine if the channel utilization is greater thanCH_UTIL_HIGH (step 128). If the channel utilization exceedsCH_UTIL_HIGH, then congestion control is triggered (step 106) and theprocedure terminates (step 108). If the channel utilization is belowCH_UTIL_HIGH (step 128), then the channel utilization is compared toCH_UTIL_LOW (step 130). If the channel utilization is below CH_UTIL_LOW,then the current data rate is examined to determine if it is greaterthan the minimum data rate (step 132). If the current data rate isgreater than the minimum data rate, then rate control is triggered todecrease the data rate (step 114) and the procedure terminates (step108).

If the current data rate is equal to the minimum data rate (step 132) orif the channel utilization is above CH_UTIL_LOW (step 130), then nofurther adjustments are made and the procedure terminates (step 108).

If rate control is triggered at step 114 or step 126, any applicablerate control procedure can be executed; the method 100 does not requirethe use of any particular rate control procedure. If desired, the method100 may use a procedure 200 for rate control.

In one embodiment of the present invention, a procedure 200 as shown inFIG. 2 is used for rate control at the AP. The procedure 200 begins bydetermining whether a downlink (DL) transmission to a specific stationwas made in the last X seconds (step 202). If no transmission was madein the last X seconds, then the initial data rate is determined asfollows.

A check is made whether the last transmission rate to the station isavailable (step 204). If the last transmission rate to the station isavailable, then it is considered (step 206). If the last transmissionrate for the station is not available (step 204), then a check is madeif the last received rate for the station is available (step 208). Ifthe last received rate is available, then it is considered (step 210).If the last received rate is not available (step 208), then the lasttransmitted data rate from any other station is considered (step 212).

Regardless of the initial data rate that is considered (from step 206,210, or 212), the cell load is then checked (step 214). The cell loadstatistics are stored in the AP, and is the average channel utilizationin the last Y seconds. The cell load is then evaluated (step 216). Inthe case of low traffic demand, the initial data rate is set to the lastdata rate considered in step 206, 210, or 212 (step 218). In the case ofhigh traffic demand (step 216), the initial data rate is determined byusing a throughput curve, similar to that shown in FIG. 3 (step 220).These curves can be based on experimental results or can be updateddynamically and stored in a database as explained below.

The throughput curves shown in FIG. 3 are preferably stored in memory atthe AP. The curves are based on collected statistics during APoperation. The x-axis represents channel utilization, which is thecurrent channel utilization plus the data rate for the nexttransmission. The y-axis is the throughput. Each curve corresponds to acertain FER range, providing the channel throughput as a function of thechannel utilization and the frame error rate. The procedure selects thedata rate that provides the maximum throughput for the current FER.

Once the initial data rate has been selected, the data frame istransmitted (step 222) and the AP waits for an ACK for the frame (step224). After receiving an ACK or the ACK timeout period expires, themissing ACK count is updated (step 226) and the throughput curve isupdated (step 228). The procedure then returns to step 202. Rate controlis a frame-based procedure; the loop presented by returning to step 202represents the continuous transmission of frames.

If there has been a downlink transmission made to a specific station inthe last X seconds (step 202), then the missing ACK count is checked(step 230). The cell load is then checked (step 232) and evaluated (step234). If the traffic demand is low, a missing ACK function is invoked(step 236), which is discussed in detail below.

In the case of high traffic demand, the initial data rate is determinedby using a throughput curve (step 238), similar to that used in step220. Once the transmission data rate has been selected, the data frameis transmitted (step 222) and the AP waits for an ACK for the frame(step 224). After receiving an ACK or waiting for the ACK timeoutperiod, the missing ACK count is updated (step 226) and the throughputcurve is updated (step 228). The procedure then returns to step 202.

The missing ACK function 400 (from step 236) is shown in FIG. 4. Thefunction 400 begins by calculating the FER for a given period (step402). The function 400 distinguishes if the frame is lost, partiallymissing (e.g., the CRC of a payload is bad, but the header informationis intact), or received in error. The function 400 reacts more quicklywhen frames are lost than when frames are partially missing or receivedin error. The difference in how much of the frame is lost can be used todetermine how to adjust the rate control. For example, the rate will bedecreased less aggressively if there is a partial missing frame versus acompletely lost frame.

The current data rate is then retrieved (step 404). A check is madewhether the current data rate is less than or equal to the maximum datarate and whether the FER value is low (step 406). If both conditions aremet, then the channel is probed at the next highest data rate for apredetermined number of frames (step 408). In one embodiment of thepresent invention, the channel is probed for at least one frame. If allof the frames sent at the higher data rate are ACKed (step 410), thenthe AP switches to the next higher data rate (step 412), and thefunction terminates (step 414).

If all of the frames sent at the higher data rate are not ACKed (step410), then no change to the data rate is made (step 416) and thefunction terminates (step 414).

If the tests at step 406 are not satisfied, then a further evaluation ismade to determine whether the current data rate is greater than theminimum data rate and the FER value is high (step 418). If both of theseconditions are met, then the AP switches to the next lower data rate(step 420) and the function terminates (step 414). If these conditions(step 418) are not met, then no change to the data rate is made (step416) and the function terminates (step 414).

FIG. 5 is a diagram of an adaptive RRM apparatus 500 constructed inaccordance with the present invention; in a preferred embodiment, theapparatus 500 resides on an AP. The apparatus 500 includes a measurementmodule (or device) 510, a RRM decision module 530, and at least oneaction module 540.

The measurement module 510 collects measurements from the hardware via ameasurement collection module (or device) 512 and calculates performancemetrics. The performance metrics calculated by the module 510 includeFER 514, cell load 516, channel utilization 518, and missing ACK count520. Additional metrics may be calculated by the measurement module 510based upon collected measurements.

The RRM decision module 530 decides which action module 540 to callbased upon the performance metrics and predetermined thresholds, asexplained above in connection with FIG. 1. The action modules 540perform the specific RRM actions, and include a traffic shaping module542, a rate control module 544, and a congestion control module 546.Additional action modules 540 may be supplied to perform additional RRMfunctions.

It should be noted that while the present invention has, for simplicity,been described in the context of wireless LAN type technology, thepresent invention may be implemented in any type of wirelesscommunication system. Purely by way of example, the present inventionmay be implemented in wireless LAN, UMTS-FDD, UMTS-TDD, TD-SCDMA, CDMA,CDMA2000 (EV-DO and EV-DV), or any other type of wireless communicationsystem.

Although the features and elements of the present invention aredescribed in the preferred embodiments in particular combinations, eachfeature or element can be used alone (without the other features andelements of the preferred embodiments) or in various combinations withor without other features and elements of the present invention. Whilespecific embodiments of the present invention have been shown anddescribed, many modifications and variations could be made by oneskilled in the art without departing from the scope of the invention.The above description serves to illustrate and not limit the particularinvention in any way.

1. A method for determining whether a data transmission rate in awireless communication system is appropriate for current wirelesscommunication system conditions, comprising the steps of: calculating aframe error rate (FER) for a given period of time; obtaining a currentdata rate; switching to a lower data rate if the current data rate isgreater than a minimum data rate and the FER is a high value;maintaining the current data rate if the current data rate is greaterthan a minimum data rate and the FER is less than a high value; anddetermining whether a higher data rate can be used if the current datarate is less than a maximum data rate and the FER is a low value.
 2. Themethod according to claim 1, wherein the lower data rate is a data rateone step lower than the current data rate.
 3. The method according toclaim 1, wherein the determining step includes the steps of: probing thetransmission channel at a higher data rate for a predetermined number offrames; and determining whether all of the frames transmitted at thehigher data rate have been acknowledged.
 4. The method according toclaim 3, wherein the higher data rate is one step higher than thecurrent data rate.
 5. The method according to claim 3, furthercomprising the step of: switching to the higher data rate if all of theframes have been acknowledged.
 6. The method according to claim 3,further comprising the step of: maintaining the current data rate if allof the frames have not been acknowledged.